#pragma once

#include "nef_import.h"
#include "resolve_type.h"
#include "nef_base.h"

BOOST_PP_REPEAT(MAX_IMPORTS, PP_DECLARE_RESOLVE, import)

namespace nef {

template<typename T>
void resolve_imports(Catalog &cat, T &val)
{
	BOOST_PP_REPEAT(MAX_IMPORTS, PP_RESOLVE, import)
	BOOST_PP_REPEAT(MAX_IMPORTS, PP_RESOLVE_T, import)

	BOOST_PP_REPEAT(MAX_BASES, PP_RESOLVE_BASE_T, import)
}

}